Grayscale rendering in 3D printing

ABSTRACT

An article of manufacture formed by a three-dimensional printing process that uses multiple build materials with different optical properties (e.g., color, opacity, and the like) at different surface depths to achieve grayscale-rendered images on exterior surfaces thereof.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.15/006,011 filed on Jan. 25, 2016, which is a continuation of U.S.application Ser. No. 13/478,233 filed on May 23, 2012, which claims thebenefit of U.S. Prov. App. No. 61/547,132 filed on Oct. 14, 2011, wherethe entire content of each of these applications is incorporated hereinby reference.

BACKGROUND

In an additive three-dimensional fabrication system, a physical objectcan be realized from a digital model by depositing successive layers ofa build material that accumulate to provide the desired form.

There remains a need for techniques to render of grayscale images onexterior surfaces of printed three-dimensional objects.

SUMMARY

An additive three-dimensional fabrication process uses multiple buildmaterials with different optical properties (e.g., color, opacity) atdifferent surface depths to achieve grayscale-rendered images onexterior surfaces thereof.

BRIEF DESCRIPTION OF THE FIGURES

The invention and the following detailed description of certainembodiments thereof may be understood by reference to the followingfigures:

FIG. 1 is a block diagram of a three-dimensional printer.

FIG. 2 is a block diagram of a controller architecture for athree-dimensional printer.

FIG. 3 is a flowchart of a process for imparting surface texture to athree-dimensional object.

FIG. 4 is a flowchart of a process for fabricating an object withsub-pixel surface features.

FIG. 5 is a block diagram of a data structure describing an object forthree-dimensional fabrication.

FIG. 6 shows an extrusion of a build material.

FIG. 7 shows an extrusion of a build material.

FIG. 8 shows an extrusion of a build material.

FIG. 9 depicts an exterior surface of an object fabricated from adigital model using a varying deposition rate.

FIG. 10 shows a multi-extruder.

FIG. 11 shows a basic fabrication building block for achieving grayscaleaffects.

FIG. 12 depicts a multilayer structure and corresponding grayscaleexterior surface effects.

FIG. 13 depicts a grayscale surface with interdigitated layers.

FIG. 14 shows a flow chart of a process to fabricate a structure withgrayscale images on an exterior surface.

DETAILED DESCRIPTION

All documents mentioned herein are hereby incorporated in their entiretyby reference. References to items in the singular should be understoodto include items in the plural, and vice versa, unless explicitly statedotherwise or clear from the text. Grammatical conjunctions are intendedto express any and all disjunctive and conjunctive combinations ofconjoined clauses, sentences, words, and the like, unless otherwisestated or clear from the context. Thus the term “or” should generally beunderstood to mean “and/or” and so forth.

FIG. 1 is a block diagram of a three-dimensional printer. In general,the printer 100 may include a build platform 102, an extruder 106, anx-y-z positioning assembly 108, and a controller 110 that cooperate tofabricate an object 112 within a working volume 114 of the printer 100.

The build platform 102 may include a surface 116 that is rigid andsubstantially planar. The surface 116 may provide a fixed, dimensionallyand positionally stable platform on which to build the object 112. Thebuild platform 102 may include a thermal element 130 that controls thetemperature of the build platform 102 through one or more active devices132, such as resistive elements that convert electrical current intoheat, Peltier effect devices that can create a heating or coolingaffect, or any other thermoelectric heating and/or cooling devices. Thethermal element 130 may be coupled in a communicating relationship withthe controller 110 in order for the controller 110 to controllablyimpart heat to or remove heat from the surface 116 of the build platform102.

The extruder 106 may include a chamber 122 in an interior thereof toreceive a build material. The build material may, for example, includeacrylonitrile butadiene styrene (“ABS”), high-density polyethylene(“HDPL”), polylactic acid (“PLA”), or any other suitable plastic,thermoplastic, or other material that can usefully be extruded to form athree-dimensional object. The extruder 106 may include an extrusion tip124 or other opening that includes an exit port with a circular, oval,slotted or other cross-sectional profile that extrudes build material ina desired cross-sectional shape.

The extruder 106 may include a heater 126 to melt thermoplastic or othermeltable build materials within the chamber 122 for extrusion through anextrusion tip 124 in liquid form. While illustrated in block form, itwill be understood that the heater 126 may include, e.g., coils ofresistive wire wrapped about the extruder 106, one or more heatingblocks with resistive elements to heat the extruder 106 with appliedcurrent, an inductive heater, or any other arrangement of heatingelements suitable for creating heat within the chamber 122 sufficient tomelt the build material for extrusion. The extruder 106 may also orinstead include a motor 128 or the like to push the build material intothe chamber 122 and/or through the extrusion tip 124.

In general operation (and by way of example rather than limitation), abuild material such as ABS plastic in filament form may be fed into thechamber 122 from a spool or the like by the motor 128, melted by theheater 126, and extruded from the extrusion tip 124. By controlling arate of the motor 128, the temperature of the heater 126, and/or otherprocess parameters, the build material may be extruded at a controlledvolumetric rate. It will be understood that a variety of techniques mayalso or instead be employed to deliver build material at a controlledvolumetric rate, which may depend upon the type of build material, thevolumetric rate desired, and any other factors. All such techniques thatmight be suitably adapted to delivery of build material for fabricationof a three-dimensional object are intended to fall within the scope ofthis disclosure.

The x-y-z positioning assembly 108 may generally be adapted tothree-dimensionally position the extruder 106 and the extrusion tip 124within the working volume 114. Thus by controlling the volumetric rateof delivery for the build material and the x, y, z position of theextrusion tip 124, the object 112 may be fabricated in three dimensionsby depositing successive layers of material in two-dimensional patternsderived, for example, from cross-sections of a computer model or othercomputerized representation of the object 112. A variety of arrangementsand techniques are known in the art to achieve controlled linearmovement along one or more axes. The x-y-z positioning assembly 108 may,for example, include a number of stepper motors 109 to independentlycontrol a position of the extruder within the working volume along eachof an x-axis, a y-axis, and a z-axis. More generally, the x-y-zpositioning assembly 108 may include without limitation variouscombinations of stepper motors, encoded DC motors, gears, belts,pulleys, worm gears, threads, and so forth. For example, in one aspectthe build platform 102 may be coupled to one or more threaded rods byworm gears so that the threaded rods can be rotated to provide z-axispositioning of the build platform 102 relative to the extruder 124. Thisarrangement may advantageously simplify design and improve accuracy bypermitting an x-y positioning mechanism for the extruder 124 to be fixedrelative to a build volume. Any such arrangement suitable forcontrollably positioning the extruder 106 within the working volume 114may be adapted to use with the printer 100 described herein.

In general, this may include moving the extruder 106, or moving thebuild platform 102, or some combination of these. Thus it will beappreciated that any reference to moving an extruder relative to a buildplatform, working volume, or object, is intended to include movement ofthe extruder or movement of the build platform, or both, unless a morespecific meaning is explicitly provided or otherwise clear from thecontext. Still more generally, while an x, y, z coordinate system servesas a convenient basis for positioning within three dimensions, any othercoordinate system or combination of coordinate systems may also orinstead be employed, such as a positional controller and assembly thatoperates according to cylindrical or spherical coordinates.

The controller 110 may be electrically or otherwise coupled in acommunicating relationship with the build platform 102, the x-y-zpositioning assembly 108, and the other various components of theprinter 100. In general, the controller 110 is operable to control thecomponents of the printer 100, such as the build platform 102, the x-y-zpositioning assembly 108, and any other components of the printer 100described herein to fabricate the object 112 from the build material.The controller 110 may include any combination of software and/orprocessing circuitry suitable for controlling the various components ofthe printer 100 described herein including without limitationmicroprocessors, microcontrollers, application-specific integratedcircuits, programmable gate arrays, and any other digital and/or analogcomponents, as well as combinations of the foregoing, along with inputsand outputs for transceiving control signals, drive signals, powersignals, sensor signals, and so forth. In one aspect, this may includecircuitry directly and physically associated with the printer 100 suchas an on-board processor. In another aspect, this may be a processorassociated with a personal computer or other computing device coupled tothe printer 100, e.g., through a wired or wireless connection.Similarly, various functions described herein may be allocated betweenan on-board processor for the printer 100 and a separate computer. Allsuch computing devices and environments are intended to fall within themeaning of the term “controller” as used herein, unless a differentmeaning is explicitly provided or otherwise clear from the context.

A variety of additional sensors and other components may be usefullyincorporated into the printer 100 described above. These othercomponents are generically depicted as other hardware 134 in FIG. 1, forwhich the positioning and mechanical/electrical interconnections withother elements of the printer 100 will be readily understood andappreciated by one of ordinary skill in the art. The other hardware 134may include a temperature sensor positioned to sense a temperature ofthe surface of the build platform 102, the extruder 126, or any othersystem components. This may, for example, include a thermistor or thelike embedded within or attached below the surface of the build platform102. This may also or instead include an infrared detector or the likedirected at the surface 116 of the build platform 102.

In another aspect, the other hardware 134 may include a sensor to detecta presence of the object 112 at a predetermined location. This mayinclude an optical detector arranged in a beam-breaking configuration tosense the presence of the object 112 at a predetermined location. Thismay also or instead include an imaging device and image processingcircuitry to capture an image of the working volume and to analyze theimage to evaluate a position of the object 112. This sensor may be usedfor example to ensure that the object 112 is removed from the buildplatform 102 prior to beginning a new build on the working surface 116.Thus the sensor may be used to determine whether an object is presentthat should not be, or to detect when an object is absent. The feedbackfrom this sensor may be used by the controller 110 to issue processinginterrupts or otherwise control operation of the printer 100.

The other hardware 134 may also or instead include a heating element(instead of or in addition to the thermal element 130) to heat theworking volume such as a radiant heater or forced hot air heater tomaintain the object 112 at a fixed, elevated temperature throughout abuild, or the other hardware 134 may include a cooling element to coolthe working volume.

In general, the above system can build a three-dimensional object bydepositing lines of build material in successive layers—two-dimensionalpatterns derived from the cross-sections of the three-dimensionalobject. As described below, a deposition rate during this process may bevaried using a variety of techniques to impart a surface texture orother structures or features to outside surfaces of thethree-dimensional object. The following description begins with ageneralized software architecture for three-dimensional fabricationusing the systems described above, and continues with specific methodsfor varying a deposition rate to achieve a non-uniform surface textureor other surface feature during fabrication of an exterior surface ofthe three-dimensional object.

It will be understood that all surfaces are non-uniform in some sense,and that any fabrication process has physical limitations that lead tovariations or non-uniformities in fabricated objects. The phrase“non-uniform surface texture” as used herein is intended to refer tothose patterns, features, or structures that depart from ordinaryprocess variations achieved in a “uniform surface texture” obtained froma constant-deposition-rate fabrication process that assumes anon-varying volumetric delivery rate for build material. By varying thevolumetric rate of delivery of build material to deposit more or lessbuild material at a given location than otherwise would have beendeposited, intentional irregularities can be obtained, and morespecifically controlled, to provide sub-pixel features or surfacetextures. Thus, non-uniform surface textures or features may beidentified as those features smaller than a nominal processingresolution of a fabrication system, but larger than features orcharacteristics resulting from random or otherwise uncontrolled processvariability. In the context of three-dimensional fabrication ascontemplated herein, sub-pixel features may similarly be understood tobe any features processed or reproduced in x-y increments within theplane of a build platform smaller than the nominal step size of thefabrication system, or otherwise smaller than the smallest discretelyaddressable position intervals of the fabrication system, particularlyin the x-y plane.

Non-uniform features as generally contemplated herein may be used toapply a desired surface texture to a three-dimensional object. In otheraspects, such non-uniform features may be used to control other aspectsof an object, such as a coefficient of friction on the surface of theobject or light transmission through the object.

In one aspect, this capability may be applied, e.g., on an angledsurface, to achieve surfaces that are more uniform or planar than wouldbe obtained in the “uniform” surface of an unmodified process. Thus theterm “non-uniform” as used herein may be best understood in certaincircumstances to mean “including features smaller than the nominalprocessing resolution of a fabrication system,” which features arereadily structurally identifiable to one of ordinary skill in the art.

FIG. 2 is a block diagram of a controller architecture for athree-dimensional printer. In general, a three-dimensional model isconverted into a sequence of tool instructions, typically including aline model that can be sent to a controller for execution on afabrication platform such as that described above.

A model 202 of an object such as any of the three-dimensional objects112 described above may be stored as a computer-aided design (CAD) modelor other three-dimensional representation using any proprietary ornon-proprietary software format. The model may, for example, include awireframe representation, solid modeling representation, surfacemodeling representation, point cloud, or the like. Numerous data formatsand three-dimensional modeling tools are known in the art, any of whichmay be suitably adapted to use for creating and storing the model 202.

The model may be provided to a computer 204, which may be any generalpurpose or special purpose computing device including, e.g., aprocessor, memory, and one or more data or network interfaces or otherinput/output ports. This may include processing circuitry on a printerand/or a separate computer or any combination of these. The computer 204may convert the model 202 in accordance with computer code running onthe computer 204 to obtain a representation of the model 202 suitablefor fabrication. In one aspect, this may include multiple steps such asconversion to a standard format such as the widely usedstereolithography (STL) file format created by 3D Systems. The model202, or the standard format representation of the model 202, may befurther processed to obtain tool instructions 208 for a controller 210such as the controller 110 described above. In one aspect, the toolinstructions 208 may include G-code or any other computer numericalcontrol (CNC) programming language or other description suitable forexecution by the controller 210. In one aspect, G-code or other similartool instructions include a tool path that characterizes a physical pathin three-dimensional space traversed by a tool such as the x-y-zpositioning assembly 108 and extruder 106 described above. A tool mayextrude material while traversing a portion of the tool path in order toform a physical object. The tool instructions 208 may represent thistool path as a sequence of directions, a sequence of locations, asequence of starting and ending locations, or any other suitablerepresentation. However formulated, the tool instructions 208 may betransmitted to the controller 210 for execution.

The controller 210, which may receive the tool instructions 208 as astream of instructions or as a file for local execution or in any othersuitable form, may interpret the tool instructions 208 and generatecontrol outputs 212 directing the various aspects of a fabricationsystem such as the printer 100 described above to produce a physicalrealization of the object described in the model 202. The controloutputs 212 may include analog control outputs, digital control outputs,or the like.

The model 202 may include, or may be processed to derive, one or moresurface features 214 of the object, or a user may specify such surfacefeatures 214 independently from the object described by the model 202.However derived, these surface features 214 may be used by the computer204 in preparing tool instructions 208. This may include incorporatingthe surface features 214 into the line model or tool path whereappropriate, or creating metadata for the tool instructions 208 so thatthe controller 210 can apply the surface features 214 consistent withits own capabilities. In another aspect, the surface features 214 may besent directly to the controller 210 for handling independent of the toolinstructions 208. As discussed above, features within the processingresolution of the printer 100 (including the controller 210) may simplybe incorporated into the tool instructions 208 for execution by thecontroller 210. However, features below the processing resolution (whichmay be measured using any suitable metric such as a minimum featuredimension, a minimum tool path step, a minimum volume of build material,a minimum x-y resolution, and so forth) may still be reproduced by thefabrication platform using the techniques discussed herein. Inparticular, the controller 210 may identify surfaces of the model 202,identify one or more corresponding surface features 214 (which may belocation dependent or location independent), and modify the toolinstructions 208 during fabrication to obtain the desired surfacefeatures 214 on a physical model fabricated from the model 202.

The surface features 214 may include any of a variety of structures,features, or the like. In one aspect, the surface features 214 mayprovide a general description of surface texture such as smooth, rough,wavy, undulating, and so forth, along with an identification of where ona surface of the object the surface feature appears. The surface feature214 may be physically modeled as a bit map or voxel representation, oras a more general representation that can be scaled, rotated, orotherwise modified to achieve a desired feature or texture. In oneaspect, a variety of surface textures or features may be provided forselection and placement by a user. More generally, a variety of types ofsurface features 214, and representations of same, may be suitablyadapted to the uses contemplated herein. In some embodiments, the toolinstructions may include information allowing for later calculation ofsurface features by a controller. This information may, withoutlimitation, include surface identifiers relating lines in a tool path tosurfaces in the model 202, such as exterior surfaces, interior surfaces,and so on. The information may also or instead include textureidentifiers that identify surface features with reference to basetextures, texture models, texturing parameters (magnitude, rotation,scaling, etc.). This information may further include data used intexture mapping the base textures to the surfaces (e.g., data forregistering/orienting the texture map to the surface, and so on). Inembodiments, the texture maps may include two-dimensional texture maps,three-dimensional texture maps, tessellations, smoothing oranti-aliasing patterns/filters, and so on.

It will be understood that, while FIG. 2 depicts surface textures asdata external to a model, the surface texture may be included withinobject data for the model, or may be inferred from the model itself, allwithout departing from the scope of this disclosure. Regardless of howor where obtained, the surface feature 214 may be realized in a physicalobject fabricated by a three-dimensional printer or the like.

When surface texture information is available, either within the toolinstructions or independent of the tool instructions, the controller 210may adjust or adapt the tool instructions accordingly to achieve theintended surface texture, such as by including an instruction todecrease or increase a feed rate for build material or a temperature ofa heating chamber, or by moving a deposition tool such as the extruder106 described above within a z axis to vary the rate at which buildmaterial is deposited. It should be appreciated that the terms computer204 and controller 210 may refer to separate processing devices such asa computer coupled to a printer and an on-board processor of a printer,however this architecture is not required, and various steps describedherein may suitably be performed by one or the other of these devices,or some combination of these and/or any other processors or otherprocessing circuitry. Thus, while it is generally true that afabrication process can logically be divided into steps performed priorto physical fabrication and steps performed during physical fabrication,no specific allocation of specific hardware to specific steps isintended by the foregoing description.

Logic for calculating the variations in a deposition rate during afabrication process may be implemented in firmware, software, hardware,or the like on the controller 210. Thus while the controller 210 maygenerally operate to extrude a build material at a constant depositionrate (or volumetric flow rate) while moving an extruder in an x-ypattern according to the tool instructions 208 from the computer 204,the controller 210 may also reference surface features 214 toadditionally determine when and where to vary from a predetermined,constant deposition rate in the tool instructions 208. These variationsin deposition rate during the build process may be applied to obtainvariations in the surface texture to obtain a physical realization ofthe model 202 that includes the surface features 214. Thus in oneaspect, the fabrication of surface textures or other surface features ascontemplated herein may be readily recognized by the addition ormodification of controller instructions to interpolate, filter, vary, orotherwise modify tool instructions for a constant-deposition-ratefabrication process.

In another aspect, these and similar techniques may be applied toachieve sub-pixel resolution in a fabrication process. For example, atool path in the tool instructions 208 may be represented as a straightline. Where this line is angled to an x-y coordinate system used tocontrol a tool such as an extruder, the deposition rate may be varied topartially fill step discontinuities between discrete, adjacent x or ycoordinates within the tool path. A variety of sub-pixel processing andrendering techniques are known in the art of two-dimensional printingsuch as interpolation, anti-aliasing, and low-pass filtering, many ofwhich may be readily adapted to use with the systems and methodsdescribed herein.

FIG. 3 is a flow chart of a process for imparting surface texture to athree-dimensional object. In general, a three-dimensional object may befabricating using the printer 100 described above or any similar system.During this process, modifications may be implemented as described belowto impose a desired, predetermined surface texture on an object duringfabrication.

As shown in step 302, the process 300 may begin with liquefying a buildmaterial. This may be any liquefiable material such as a thermoplasticor the like. It will be understood that some useful build materials donot require liquefication, and may be curable or otherwise treatableafter extrusion to achieve desired structural and/or aestheticproperties. Thus this step is optional, and depends upon the type ofbuild material being used in a three-dimensional fabrication process.

As shown in step 304, the liquefied build material may be extrudedthrough a nozzle of an extruder onto a build surface in an extrusion toform an object. This may be a liquefied build material, or any othersuitable build material as noted above.

As shown in step 306, the build surface may be moved relative to theextruder (or nozzle thereof) during the extrusion as generally describedabove to impart a predetermined shape, such as from a computer model orthe like, to the object.

As shown in step 308, the process 300 may include fabricating a wall orother portion of the object such as an exterior surface with theextrusion of the build material. This may include fabrication using anyof the techniques described above. It will be understood that the wallmay be detected as an exterior surface using a variety of techniques.For example, numerous algorithms are known for identifying surfaces ofvolumetric models, any of which may be applied to identify exteriorwalls automatically. An exterior wall may also or instead be explicitlylabeled in the surface feature data, so that a controller can detect theexterior surface with a flag or the like within the tool instructions.In this aspect, it will be understood that manual identification of“exterior” walls may also be used to flag interior walls or structureswhere greater control of extrusion is desired.

While the description herein focuses on the texture or shape of surfacefeatures imposed on an object, it will be appreciated that the improvedcontrol provided by the techniques disclosed herein may be applied toobtain other benefits. For example, by varying the thickness of anexterior wall, the light-transmissive properties may be controlled toachieve desirable aesthetic qualities such as by embedding patterns ordesigns in an exterior wall that are visible when the exterior wall isbacklit. This technique may be applied to fabricate, e.g., an ornamentallamp shade or similar device with a light-transmissive design.

As shown in step 310, the process 300 may include varying a depositionrate of build material during extrusion to impart a non-uniform surfacetexture to the exterior wall. As generally described above, thenon-uniform surface texture may be a predetermined surface texturehaving one or more sub-pixel features relative to the process used forfabrication.

It will be understood that the deposition rate may be varied using anumber of different techniques. For example, in one aspect a buildmaterial feed rate may be varied by controlling the speed of a drivemotor or similar mechanism that supplies a filament of build material toan extruder. As the feed rate or motor speed is increased, thedeposition rate will increase, and as the feed rate (or motor speed) isdecreased, the deposition rate will decrease. This approach inparticular permits extended periods of increase or decrease withoutrequiring an offsetting, opposing action to return to the constantdeposition rate. By contrast, other techniques such as increasingtemperature (where materials and thermal control permit) or temporarilychanging a z-axis position of the extruder or build platform, wouldgenerally require a complementary, offsetting parameter change to returnthe system to a normal, constant-deposition-rate process. Thislimitation is mitigated where the change in deposition rate is periodicin nature. That is, where the variation in deposition rate is sinusoidalor otherwise varies in a manner for which the rate of depositionintegrates to the constant rate (or stated differently, with zero netchange in deposition rate), the need to actively recover the constantdeposition rate (e.g., by a complementary, opposing step in z-axisposition) may be mitigated or eliminated.

In another aspect, temperature of a heater or the like may similarly bevaried. By increasing the heat applied to a liquefiable material such asa thermoplastic, the rate of deposition may be increased as the lessviscous material flows more quickly from an extruder. Similarly, adecrease in heat may slow the extrusion of material. As noted above,such variations may be periodic in nature to avoid processingdifficulties from an otherwise constant feed supply rate such asoverfilling a melting chamber or underfilling to cause a discontinuityin the supply of build material. As another example, the z-axis positionmay be temporarily increased or decreased where the system allows, tocause an increase in the deposition rate (as an extruder moves closer toa build platform) or a decrease in the deposition rate (as the extrudermoves away from the build platform). In yet another aspect, the rate ofx-y movement or horizontal velocity of the build platform relative tothe extruder may be varied to achieve changes in deposition rate undercontrol of the controller.

It will readily be appreciated that two or more parameters (e.g.,temperature and feed rate) may be varied concurrently to control thedeposition rate of a build material. Additionally, it will be understoodthat certain controls may exhibit a significant latency. So, forexample, increasing the temperature may be limited by thermalcapacitance of the heating components, and there may be a significantlag (relative to a time step used by the controller) before the changein temperature yields a change in deposition rate. Such latency may bedetermined empirically or experimentally, or estimated using physical orstatistical modeling, or otherwise determined so that the controllerissues instructions to the extruder and/or build platform in a mannersuitably synchronized to the fabrication process to obtain surfacefeatures at the desired location(s) on the surface of an object.

As noted above, the surface texture may be specified in numerous ways.This may include sub-pixel interpolation of a computer model as notedabove. This may also or instead include use of pre-defined surfacetextures based upon, e.g., sinusoidal functions, step functions,triangle functions, square functions, and so forth. In addition todescribing such surface textures in a particular two-dimensional layerof a build, a surface texture may define an offset or the like fromlayer to layer so that a periodic or other variation can be shifted inthe x-y plane with successive z-axis steps. Thus the surface texture mayinclude two-dimensional features that are aligned, misaligned, staggeredor otherwise arranged from layer to layer. Similarly, the surfacetexture may apply different patterns or functions in eachtwo-dimensional layer to achieve a desired surface texturing effect.

More generally, varying the deposition rate may include any and alltechniques for varying how much material is deposited in a particulararea. Thus, the phrase “varying the deposition rate” as used herein isintended to include literally varying the rate at which build materialexits the extruder, as well as other variations causing a change in thetime wise amount of material deposited on an object such as a change inthe velocity of an extrusion head relative to a build platform, as wellas any combination of the these or other controllable parameters thataffect the quantity of material deposited in a particular area over aparticular period of time.

FIG. 4 is a flowchart of a process for fabricating an object withsub-pixel surface features.

As shown in step 402, the process 400 may begin with receiving athree-dimensional model of an object that has been pre-processed forrendering as a continuous path in an extrusion process that uses aconstant deposition rate. This may, for example, include the creation oftool instructions from a digital model as generally described above,including without limitation a tool path followed by an extruder whiledepositing material to build the object. In general, pre-processing inthis manner includes selecting a number of operating parameters such asfeed rate, temperature, x and y step sizes, and the like, which may beselected explicitly through a user interface, or implicitly by softwaresupporting a fabrication system, and calculating a path through a seriesof two-dimensional layers that can be used to fabricate the object. Thedetails of tool path creation are well known in the art and embodied insoftware and fabrication systems that are commercially available, and assuch, the details of generating tool instructions are not set forth indetail here.

As shown in step 404, the process 400 may include identifying anexterior wall in the three-dimensional model of the object. As notedabove, this may include any suitable automated or manual process orcombination of these, and may for example include identifyingnon-exterior walls as exterior walls for purposes of sub-pixel featurefabrication. The phrase “exterior wall” as used herein should beunderstood to include all such regions of the model and/or objectfabricated from the model.

As shown in step 406, the process may include determining surfacefeatures of the exterior wall. This may include identifying small (e.g.,sub-pixel) features from a digital model that are not captured in a toolpath, such as surface details or an interpolation of lines or othergeometric features from the digital model. This may also or insteadinclude a selection of a generalized surface texture for a region of theexterior wall as described above. It will be understood that in certaincircumstances, the surface features may include features larger than anominal x-y processing resolution of a fabrication system, that is,capable of reproduction without independent control of a deposition rateas described herein. Nonetheless, such surface features may be usefullymodeled and fabricated as a characteristic independent of the digitalmodel.

As shown in step 408, a three-dimensional fabrication system mayfabricate the object of the digital model using a tool path and/or othertool instructions.

As shown in step 410, during the fabrication of step 408, a surfacetexture may be imparted to the exterior wall of the object bycontrolling the deposition process to deviate from the constantdeposition rate. Stated differently, the deposition rate may vary inresponse to surface features detected by the controller duringdeposition, which variations may be independent of a tool path dictatedby a source digital model. Such variations may in general be representedin a variety of forms, and may be realized using a variety oftechniques, all as discussed above.

This may, for example, include elements or features smaller than aresolution of the deposition process, such as an x-y resolution or othernominal step size or controlled increment of fabrication. This may alsoor instead include an overall surface texture for the exterior wallbased upon a mathematical model (e.g., sinusoid, triangle wave, etc.),bitmapped surface, or any other source.

FIG. 5 is a block diagram of a data structure describing an object forthree-dimensional fabrication. In general, the data structure 500 mayinclude a description of an object 502 that has been pre-processed forrendering as a continuous path in a deposition process based upon, e.g.,an extrusion at a constant deposition rate, along with a surfacedefinition 514 of one or more surface features for the object 502.

The description of the object 502 may include any of a variety of toolinstructions that specify parameters such as temperature, feed motorspeed, and any other controllable parameters for a fabrication platformsuch as the printer 100 described above. The instructions may moreparticularly include a tool path 504 including a number of start 508 andend 510 coordinates in x-y-z space that characterize a path traversed bya tool such as an extruder during fabrication of the object. Typically,the z coordinate remains constant while a two-dimensional line isrendered in the x-y plane, however, any combination or sequence ofcoordinates within the processing capability of the fabrication platformmay be used to define a tool path for rendering an object ascontemplated herein. Techniques are well known in the art for convertinga three-dimensional object model into a tool path that includessequential layers of two-dimensional patterns, and software (eitherproprietary or non-proprietary) is commercially available for performingthis function. As such, the details of a conversion from a digital modelto a tool path are not described in detail here.

In addition, the description of the object 502 may include a surfaceidentifier 512 or other metadata that flags a particular line or linesegment in the tool path 504 as belonging to an exterior wall. It shouldbe noted that this data is optional. Rather than explicitly labelingsurfaces, exterior surfaces and the like may be inferred by a controllerthat receives the description of the object 502 based on, e.g., analysisof the tool path 504 or a comparison of the tool path 504 to an originaldigital model from which the tool path 504 was obtained.

The surface definition 514 may define surface features or surfacetexture in any suitable manner. For example, the surface definition 514may be indexed to the surface identifier 512 of the description of theobject 502 so that textures or features can be retrieved and applied ona segment-by-segment basis along the tool path 504. The textureidentifier 518 may include a reference to a texture description, such asa mathematical or physical (e.g., bitmapped) representation of atexture, or to one or more tool instructions that vary a deposition rateto achieve a desired feature or texture. In another aspect, the surfacedefinition 514 may be omitted as an explicit description of surfacefeatures or textures, and a controller or the like processing the toolpath 504 may instead compare the tool path 504 to a source digital modelof the object to determine whether and where a deposition rate might bevaried to conform the fabrication process to features of the digitalmodel. It will further be appreciated that both of these techniques maybe applied in combination, either concurrently or sequentially, withoutdeparting from the scope of this disclosure.

Having described systems, methods, and data structures for surfacetexturing and other sub-pixel rendering techniques in three-dimensionalfabrication, a number of examples are now provided of extrusionsobtained using these techniques. It will be understood that the drawingsof extrusions in the following figures are provided by way of exampleand for purposes of illustration. These drawings do not limit the scopeof this disclosure to any particular relative or absolute dimensions orto any specific features or patterns of extrusion that might be obtainedby varying a deposition rate as contemplated herein.

FIG. 6 shows an extrusion of a build material. The build material may beany of the materials described above. The extrusion 600 in FIG. 6 isrendered along a straight line of a tool path from a first point 602 toa second point 604 in an x-y plane. The extrusion 600 is renderedwithout any modification to tool instructions and as such provides asurface 608 that is substantially straight.

FIG. 7 shows an extrusion of a build material. The extrusion 700 isrendered along a straight line of a tool path from a first point 702 toa second point 704. During the extrusion, the deposition rate may bevaried according to, e.g., a periodic square wave or similar stepfunction of any desired duty cycle to obtain a surface 708 that includesperiodic protrusions. As noted above, these protrusions may be staggeredfrom layer to layer of a fabrication process so that correspondingridges are oriented diagonally along a surface of a completed object.

FIG. 8 shows an extrusion of a build material. The extrusion 800 isrendered along a straight line of a tool path from a first point 802 toa second point 804. During extrusion, the deposition rate may be variedaccording to, e.g., a periodic function such as a sinusoid or trianglewave to obtain a surface 808 that is substantially sinusoidal in shape.

FIG. 9 depicts an exterior surface 900 of an object fabricated from adigital model using a varying deposition rate. The digital model of theexterior surface 900 may have a surface 902 angled to a rectilinearcoordinate system of a fabrication platform such as the printer 100described above. The physical model rendered by a conventional extrusionprocess with x-y control may have a corresponding surface 904 with anumber of straight line segments oriented to the x-y coordinate systemof the extruder, resulting in a stair step surface. By varying thedeposition rate using, e.g., the techniques described above, a physicalmodel of the exterior wall may be fabricated with a modified surface 906that more closely matches the digital model. It will be appreciated themodified surface 906 is provided by way of example, and that the actualcontours of the modified surface 906 may vary according to thecapability of a varying deposition rate process to achieve particularsurface features. It will further be appreciated that an interiorsurface of the physical model may depart significantly from the contoursof the digital model, the simple x-y version of the digital model, andthe modified surface 906 of the exterior surface 900.

The foregoing techniques may be employed to apply surface textureindependent of a digital model, or to render sub-pixel surface featuresas generally described above. It will be appreciated that modificationsof deposition rate (e.g., by a controller to a set of tool instructionsfor fabricating an object from a digital model) may similarly be appliedto a wide array of aesthetic and structural design techniques. Forexample, these techniques may be applied to vary wall thickness andprovide different light transmission properties within a wall of anobject. These techniques may also or instead be used to control infillwithin a closed object in order to reduce weight or increase structuralsupport. These techniques may also or instead be applied to buttress,fillet, or otherwise add internal and/or external structural features toreinforce an object or portions thereof, or similarly to reduce materialdeposition to reduce rigidity and provide increased compliance atdesired locations within an object. All such variations as would beapparent to one of ordinary skill in the art are intended to fall withinthe scope of this disclosure.

While certain fabrication techniques offer greater z-axis (e.g., byheight or layer) resolution than x-axis or y-axis resolution, grayscaleimaging may nonetheless be achieved with satisfactory results, and maybe improved in vertical walls using various techniques, such as thesub-pixel resolution techniques described above.

FIG. 10 shows a multi-extruder. The details of multi-materialthree-dimensional printing are addressed elsewhere. In particular, itwill be noted that the extruder 1000 can extrude two different materialsfor a three-dimensional build—a first material 1002 that is black andopaque, and a second material 1004 that is generally pigment free orwhite, and at least partially translucent so that visible light can passthrough. While black and white materials are suitable for grayscaleimaging as contemplated herein, it will be readily appreciated thatother colors may also or instead by employed to more generally achievevarious monochrome or multicolor visual effects on exterior surfaces.

FIG. 11 shows a basic fabrication building block for achieving grayscaleaffects. A first layer of opaque material 1102, when printed orotherwise fabricated beneath a second layer of translucent material1104, the resulting structure 1106 may yield a partial tone, grayscaleaffect when viewed from an illuminated exterior 1108. Of course, theactual rendered color/tone will depend on the optical properties of theopaque material and the translucent material, including withoutlimitation the opacity, the color, the absorption, and so forth. Thuswhile the term ‘opaque’ is generally used to refer to a substrate andthe term ‘translucent’ is generally used to refer to an overlay, theseterms are not intended to require specific optical properties but ratherto suggest the general function of these two materials in achieving agrayscale image on an exterior surface.

FIG. 12 depicts a multilayer structure and corresponding grayscaleexterior surface effects. In general, the structure 1200 includes afirst layer 1202, a second layer 1204, and a third layer 1206, each ofwhich may be optionally filled with either or both of an opaque materialand a translucent material. Each layer may have a thickness of about 0.3mm, although any other depth or depths consistent with a particularfabrication process and suitable for grayscale rendering may also orinstead be employed.

In a first region 1208, every layer may be fabricated from an opaquematerial, so that the exterior surface 1210 appears black (oralternatively, a color of the opaque build material). It will further beunderstood that layers below the surface layer may also or instead befabricated from the translucent material, or any other suitablematerial, without affecting the surface properties of the opaque layer.In a second region 1212, the first layer 1202 may be fabricated from atranslucent material, while the second layer 1204 and the third layer1206 are fabricated from an opaque material. In this second region 1212,the exterior surface 1210 may have a dark gray color. In a third region1214, the first layer 1202 and the second layer 1204 may be fabricatedfrom the translucent material, and the third layer 1206 may befabricated from the opaque material, thus imparting a light gray colorto the exterior surface 1210. In a fourth region 1216, all of the layersmay be fabricated from the translucent material, so that the exteriorsurface 1210 has a white color. It will be appreciated that the termsblack, dark gray, light gray, and white are relative in nature, and areintended to refer generally to degrees of darkness, which may varysignificantly in absolute terms according to the optical properties ofthe materials used, rather than strict locations on a grayscale or colorcurve.

FIG. 13 depicts a grayscale surface with interdigitated layers. Inparticular, it will be noted that a translucent material may bedeposited both below and above an opaque material to provide multipleoverlaps of the opaque build material and the translucent. Thistechnique may be used, for example, to improve structural integritythroughout the jointed region, or to impart desirable visual effects toexterior surfaces of a structure. The structure in FIG. 13 may bereadily fabricated in successive layers (e.g., z-axis layers) so that atop or bottom surface of a vertically fabricated structure has thedesired exterior surface grayscale pattern and the desiredinterdigitation for strength. However, it will be understood thatsimilar techniques may also or instead be employed on sidewalls (e.g.,vertical exterior walls of a vertically fabricated structure) or anyother exterior walls of a structure. It will also be noted that, usingopaque material at various depths, the image includes five grayscalestones including a white tone 1302, a light gray tone 1304, a medium graytone 1306, a dark gray tone 1308, and a black tone 1310. However othernumbers of layers may be used with corresponding levels of grayscaleavailable for visual effects on an exterior surface of an object.

FIG. 14 shows a process 1400 for fabricated a structure with grayscaleimages on an exterior surface.

The process 1400 may begin with step 1401 where a digital image isprovided. The digital image may be from a variety of sources such as adrawing application, technical drawing application, or other graphics orsimilar computerized source where a user can create or edit digitalimages. The digital image may be also or instead be obtained from alibrary of images including icons, photographs, sketches, thumbnails,clip art, and so forth. In another aspect, the digital image may beobtained from a digital camera or other digital image source. Thedigital image may also or instead include a texture image such as anypattern intended for tiling or other repeating, contiguous ornon-contiguous use over an area of the surface. The digital image mayalso be in a variety of file formats, many of which are known in the artand may be suitably adapted as source images for grayscaling ascontemplated herein.

In one aspect, a three-dimensional printer may include a wireless orwired communication port for coupling directly to a source of digitalimages. For example, the printer may include a USB port to couple to adigital camera, along with software and a user interface to retrieveimages from the digital camera. A modeling environment forthree-dimensional objects may provide markers or other annotations for auser to specify where an image is to be placed on an object withoutspecifying what the image is. In this manner, a user may defer imageselection until the object is fabricated. In another aspect, a printermay be configured to respond to receipt of an image by placing the imageon a predetermined object and fabricating the predetermined object withthe image in a predetermined location.

The process 1400 may proceed to step 1402 where a grayscale pattern isobtained for the digital image. The grayscale pattern may include apredetermined number of grayscale levels. This may include providing acustom-created grayscale image, or a computer-generated image derivedfrom any of the digital image sources described above. Forcomputer-generated images, a source image may be decomposed according todarkness, color, or the like into any number of grayscale levelsaccording to the predetermined number of grayscale levels, which may bethe number of grayscale levels available in a fabrication process asdescribed above. This may include a fixed number of grayscale levels, ora variable number of grayscale levels according to user preferencesand/or system limitations.

While grayscale images are conventionally rendered using gray, it willbe understood that the techniques described herein are more generallyapplicable to images using any range of intensities for monochromerendering based upon numerical values for each pixel location or otherimage region, and may be used with any underlying color (such as red,green, blue, and yellow, or cyan, magenta, yellow, and black, or anymixture of the foregoing,) to provide varying degrees of colorsaturation or intensity for that color. In addition, color-varyingeffects may be usefully achieved by overlaying materials with differentcolors and/or translucence to obtain varying color spectra instead of orin addition to varying color intensity. Any such range of colors mayalso be represented on a scale correlated to an amount of mixing, whichcolor scale may also be used to describe individual pixel/locationvalues for a digital image using a variety of techniques known in theart. Accordingly, the term grayscale as used herein is intended todescribe any value or array of values that specify portions of an imageaccording to a controllable or selectable scale of values, and does notimply any specific color or translucence of build materials that areoverlapped according to a “grayscale” image of such values. A grayscaleimage as contemplated herein may be rendered in any color, orcombination of overlapped colors according to the build materialsselected for a fabrication process. Also contemplated herein is acontrollable level of mixing for two or more different colors, where the‘grayscale’ value represents a discrete level of mixing between twocolors based upon use of overlapping build materials as described above.Thus grayscaling should be generally understood to refer generally tothe manner in which a visual effect is specified (with a single value)rather than the color of the resulting object, and all such variationsof black and white intensity, color intensity, and/or color mixing thatcan be obtained with various build materials using the techniquesdescribed above are intended to fall within the meaning of ‘grayscale’as that term is used herein unless a different meaning is explicitlystated or otherwise clear from the context.

As shown in step 1404, a pattern for a number of multi-material,two-dimensional layers may be determined based upon the distribution ofgrayscale tones determined in step 1402. This may for example includedetermining a pattern for a plurality of two-dimensional layers of afirst material and a second material, where the first material issubstantially opaque and the second material is substantiallytranslucent, such as the black and white build materials describedabove. In general, the pattern for the plurality of two-dimensionallayers may be selected to impart the grayscale pattern for the imageonto an exterior surface of an object. This process may be automated,and may include any of the layering techniques described above. Thus forexample, a user may provide a picture that may be converted intograyscale using the grayscale levels available to a particularfabrication process, and the resulting grayscale image may be placed atany desired location on a surface of a model for a three dimensionalobject.

It will further be appreciated that references to two-dimensional layersin the preceding description refer to single layers of material in afabrication process. While such layers necessarily have a thickness(e.g., for a processing plane at a z-axis top or bottom of an object) orwidth (e.g., for a side wall or other exterior layer of a fabricatedobject) that imparts three-dimensional shape, this dimension istypically well characterized, relatively consistent, andlimited/controlled by physical processing capabilities of a printer 100.The resulting layer (e.g., an x-y tool path or deposition pattern and/orresulting shape) may be adequately characterized in two dimensions. Thusthe term two-dimensional as used in this context is intended to refer toa single processing layer in a three-dimensional build process ratherthan strict mathematical two-dimensionality.

As shown in step 1406, an object may be fabricated using themulti-material, two-dimensional layers determined above. This mayinclude fabricating the object from the plurality of two-dimensionallayers using the first material and the second material according to thepattern. For example, the controller of an additive fabrication systemsuch as any of the systems described above may be configured to operatean extruder and an x-y-z positioning system to fabricate an object fromtwo or more materials. More specifically, the controller may controldelivery of the two materials in a manner that imparts a grayscale imageof the digital image to an exterior surface of the object by selectivelylayering the substantially translucent material over the substantiallyopaque material to obtain one or more predetermined grayscale levels ofthe grayscale image. The controller may also include a processorconfigured to receive a digital image and to perform any desiredconversions as discussed above, or a pre-processed image with suitablegrayscale levels may be provided to the controller from another source.Thus in general a physical object may be fabricated having a shapederived from a three-dimensional model and a grayscale image on thesurface thereof derived from a grayscale image.

It will be appreciated that the various steps identified and describedabove may be varied, and that the order of steps may be adapted toparticular applications of the techniques disclosed herein. All suchvariations and modifications are intended to fall within the scope ofthis disclosure. As such, the depiction and/or description of an orderfor various steps should not be understood to require a particular orderof execution for those steps, unless required by a particularapplication, or explicitly stated or otherwise clear from the context.In one aspect, the various sub-pixel and/or surface texturing techniquesdescribed herein may be used in combination with the grayscalingtechniques described herein to provide overlapping layers of variablethickness, thereby providing more general control of grayscale renderedcolors.

It should also be appreciated that the visualization techniquesdisclosed herein may be readily adapted to use more than two materialslayered together, such as with two or more different colored translucentmaterials layered sequentially on top off a base color.

The methods or processes described above, and steps thereof, may berealized in hardware, software, or any combination of these suitable fora particular application. The hardware may include a general-purposecomputer and/or dedicated computing device. The processes may berealized in one or more microprocessors, microcontrollers, embeddedmicrocontrollers, programmable digital signal processors, or otherprogrammable device, along with internal and/or external memory. Theprocesses may also, or instead, be embodied in an application specificintegrated circuit, a programmable gate array, programmable array logic,or any other device or combination of devices that may be configured toprocess electronic signals. It will further be appreciated that one ormore of the processes may be realized as computer executable codecreated using a structured programming language such as C, an objectoriented programming language such as C++, or any other high-level orlow-level programming language (including assembly languages, hardwaredescription languages, and database programming languages andtechnologies) that may be stored, compiled or interpreted to run on oneof the above devices, as well as heterogeneous combinations ofprocessors, processor architectures, or combinations of differenthardware and software.

Thus, in one aspect, each method described above and combinationsthereof may be embodied in computer executable code that, when executingon one or more computing devices, performs the steps thereof. In anotheraspect, the methods may be embodied in systems that perform the stepsthereof, and may be distributed across devices in a number of ways, orall of the functionality may be integrated into a dedicated, standalonedevice or other hardware. In another aspect, means for performing thesteps associated with the processes described above may include any ofthe hardware and/or software described above. All such permutations andcombinations are intended to fall within the scope of the presentdisclosure.

While particular embodiments of the present invention have been shownand described, it will be apparent to those skilled in the art thatvarious changes and modifications in form and details may be madetherein without departing from the spirit and scope of this disclosureand are intended to form a part of the invention as defined by thefollowing claims, which are to be interpreted in the broadest senseallowable by law.

What is claimed is:
 1. An article of manufacture formed by a three-dimensional printing process including a deposition of multiple layers of at least two build materials, comprising: an exterior surface having a grayscale image comprising regions with a predetermined number of grayscale levels, each one of the predetermined number of grayscale levels rendered using a different number and arrangement of layers of the at least two build materials, the at least two build materials including a substantially opaque build material and a substantially translucent build material, wherein the substantially opaque build material is disposed at various depths beneath the substantially translucent build material corresponding to each of the predetermined number of grayscale levels.
 2. The article of claim 1, wherein the predetermined number of grayscale levels includes three or more grayscale levels.
 3. The article of claim 1, wherein the predetermined number of grayscale levels includes three, four, or five grayscale levels.
 4. The article of claim 1, further comprising multiple overlaps of the substantially opaque build material and the substantially translucent build material in at least one region.
 5. The article of claim 1, wherein the exterior surface is derived from a digital image.
 6. The article of claim 5, wherein deriving the exterior surface from the digital image includes decomposing the digital image according to darkness or color into grayscale levels according to the predetermined number of grayscale levels.
 7. The article of claim 5, wherein the digital image is a digital photograph.
 8. The article of claim 5, wherein the digital image is a texture image for repeated instantiation on the exterior surface.
 9. The article of claim 1, wherein the substantially opaque build material is a black build material.
 10. The article of claim 1, wherein the substantially opaque build material is a colored material having at least one of a cyan color, a magenta color, and a yellow color.
 11. The article of claim 1, wherein the substantially opaque build material is a colored material having at least one of a red color, a blue color, and a green color.
 12. The article of claim 1, wherein the substantially translucent build material is a white build material.
 13. The article of claim 1, further comprising a third material having a different color than one or more of the substantially opaque build material and the substantially translucent build material.
 14. The article of claim 1, further comprising a third material having a different opacity than one or more of the substantially opaque build material and the substantially translucent build material.
 15. The article of claim 1, further comprising a third material having a different translucency than one or more of the substantially opaque build material and the substantially translucent build material.
 16. The article of claim 1, wherein the exterior surface is a z-axis top surface of the article.
 17. The article of claim 1, wherein the exterior surface is a z-axis bottom surface of the article.
 18. The article of claim 1, wherein the exterior surface is a sidewall of the of the article.
 19. The article of claim 1, wherein the deposition of multiple layers of the at least two build materials includes extruding successive layers of material in two-dimensional patterns derived from a computer model of the article.
 20. The article of claim 1, wherein the grayscale image includes a monochrome rendering of an underlying color of the substantially opaque build material. 